package com.ruoyi.washer.service;

import java.util.List;
import com.ruoyi.washer.domain.XwDivideAccounts;
import com.ruoyi.washer.model.DivideAccountsQueryByMonthReq;
import com.ruoyi.washer.model.DivideAccountsQueryByMonthRes;

/**
 * 分账处理Service接口
 * 
 * @author hawking
 * @date 2023-12-15
 */
public interface IXwDivideAccountsService 
{
    /**
     * 查询分账处理
     * 
     * @param divideAccountsId 分账处理主键
     * @return 分账处理
     */
    public XwDivideAccounts selectXwDivideAccountsByDivideAccountsId(Long divideAccountsId);

    /**
     * 查询分账处理列表
     * 
     * @param xwDivideAccounts 分账处理
     * @return 分账处理集合
     */
    public List<XwDivideAccounts> selectXwDivideAccountsList(XwDivideAccounts xwDivideAccounts);

    /**
     * 新增分账处理
     * 
     * @param xwDivideAccounts 分账处理
     * @return 结果
     */
    public int insertXwDivideAccounts(XwDivideAccounts xwDivideAccounts);

    /**
     * 修改分账处理
     * 
     * @param xwDivideAccounts 分账处理
     * @return 结果
     */
    public int updateXwDivideAccounts(XwDivideAccounts xwDivideAccounts);

    /**
     * 批量删除分账处理
     * 
     * @param divideAccountsIds 需要删除的分账处理主键集合
     * @return 结果
     */
    public int deleteXwDivideAccountsByDivideAccountsIds(Long[] divideAccountsIds);

    /**
     * 删除分账处理信息
     * 
     * @param divideAccountsId 分账处理主键
     * @return 结果
     */
    public int deleteXwDivideAccountsByDivideAccountsId(Long divideAccountsId);

    /**
     * 按月获取分账列表
     *
     * @param divideAccountsQueryByMonthReq 查询参数
     * @return 分账列表
     */
    List<DivideAccountsQueryByMonthRes> queryByMonth(DivideAccountsQueryByMonthReq divideAccountsQueryByMonthReq);

}
